# 元类就是用来创建这些类（对象）的，元类就是类的类 ，所以type就是一个元类 如：
# MyClass = MetaClass() #使用元类创建出一个对象，这个对象称为“类”
# MyObject = MyClass() #使用“类”来创建出实例对象
# Python中所有的东西，注意，我是指所有的东西——都是对象。
# 这包括整数、字符串、函数以及类。它们全部都是对象
# str是用来创建字符串对象的类,int是用来创建整数对象的类,type就是创建类对象的类
# 而且它们都是从一个类创建而来，这个类就是type。
# 可以使用 __class__ 来的到创建该对象的类
age = 20
print(age.__class__)  # int
str1 = 'ly'
print(str1.__class__)  # str
bool1 = True
print(bool1.__class__)  # bool
t = (1, 2, 3)
print(t.__class__)  # tuple
l = [1, 2, 3, 4]
print(l.__class__)  # list
d = {'name': 'ly', 'age': 20}
print(d.__class__)  # dict

def func():
    pass

print(func.__class__)  # function

class Test():
    def __init__(self):
        pass


print(Test.__class__)  # type
# 全是 type
print(int.__class__)
print(str.__class__)
print(bool.__class__)
print(tuple.__class__)
print(list.__class__)
print(dict.__class__)
print(func.__class__.__class__)
print(type.__class__)
